Conventionally, the coding systems typified by MPEG-2 and MPEG-4 standardized by MPEG (Moving Picture Experts Group), and H.264 standard (the document of which is the same as MPEG-4 Part 10) standardized by ITU-T (International Telecommunication Union, Telecommunication Standardization Sector) have been known as the art in the area of moving picture coding.
The moving picture coding is broadly classified into inter-frame coding and intra-frame coding. In inter-frame coding, a difference between temporally successive images is coded, whereas in intra-frame coding an image is coded separately. (One picture which a moving picture includes is hereinafter referred to as “image”. “Image” can represent any of “frame” and “field” according to progressive signals and interlace signals. For instance, “image” represents “frame” when coding is executed in frames, however in the case of processing in fields, “image” refers to “field”. Now, it is noted that “inter-frame”, “inter-frame” and “frame memory”, which have been generic terms in the coding area, are used as they are, however they are not limited to “frame” of interlace signals, and they can mean any of “frame” and “field” depending on a processing mode at that time.) In general, the amount of codes of an image subjected to intra-frame coding is larger than that of an image subjected to inter-frame coding. Despite such being the case, intra-frame coding is a scheme necessary for improvement of the random accessibility at the time of reproduction and for return at occurrence of an error as well as the top of video contents (of a sequence), and typically intra-frame coding is periodically selected at intervals of 0.5 to 2 seconds, i.e. 15 to 60 frames.
In the coding, an image is splintered into blocks, and the block makes a unit of the processing. (Usually, a block is composed of 16 pixels×16 lines, which is referred to as “macro block” in MPEG. The “block” is hereinafter used as a generic term of the processing unit, which processing involved with the invention is performed in. If the unit of processing involved with the invention is different from the size of a macro block in MPEG, the block defined as described above is sometimes referred to as “sub-block” to clearly discriminate it from a macro block.) In intra-frame coding, the coding is performed following the procedure. A prediction signal is produced, for each block, using the value of an already-coded image signal (pixel) within the same image, and then a value of the difference between a signal of a block to be coded, and the prediction signal is subjected to orthogonal transformation and quantization, and thus translated into a code. In parallel, an identification signal which the prediction signal is produced based on is coded as well.
Non-patent documents 1 and 2, which are to be cited later, show nine methods, i.e. eight methods which FIG. 1 shows as a method of producing a prediction signal and a method of using a mean value of pixels surrounding a block to be coded. As to the methods shown by FIG. 1, eight-direction prediction methods depending on the image contents' direction are defined involving a prediction signal of a coding block 200—yet to be coded. The part (1) of FIG. 1, for example, shows a method suitable for a case in which the contents of the image have a strong correlation with each other along the lengthwise direction, i.e. follow the lengthwise line. According to the method, an already-coded signal 211 neighboring a coding block 200 is repeatedly copied along the direction of a copy direction 212, whereby a prediction signal is produced. Now, it is noted that an area involved with the pixel signal 211 used for prediction has a one-pixel width in the lengthwise direction, and a crosswise width corresponding to a number of pixels—the same as the number of pixels of the block in the crosswise direction. Likewise, with parts (2) to (8) of FIG. 1, prediction signals are produced by copying the values of pixel signals in directions indicated by arrows from already-coded signals (respective hatched portions). As to any of the parts (2) to (8) of FIG. 1, an area involved with a signal of pixel used for prediction (shown by a hatched portion) has a one-pixel width, belongs to the areas of already-coded pixel signals, and neighbors a not-yet-coded area (a pixel belonging to not-yet-decoded areas is present somewhere in eight vicinities of a pixel concerned). In line with the steps of coding, an identification signal showing the direction adopted in the prediction is coded.
Patent Documents 1 and 2, which are to be cited later, disclose a method of indicating a position on which to produce a prediction signal by use of a vector as a prediction method. (A piece of information indicating a pixel position in a picture is hereinafter referred to as “a vector” simply, or “a prediction vector” except as otherwise provided. If the information must be distinguished from “a motion vector” used for so-called motion-compensated inter-frame coding, the information is referred to as “intra-picture vector”.) In FIG. 2, one image consists of an already-coded area 130 and a not-yet-coded area 140. When coding a coding block 100, a block signal (prediction block 110) suitable for using as a prediction signal is selected from an already-coded area 130, and its position is indicated as a two-dimensional relative position with respect to the coding block 100 (by a prediction vector 120). In the drawing, the vector 120 is represented by the relative position of a pixel located in an upper-left portion of the block (shown as a small quadrangular shape). In the coding, the difference between each pixel signal from inside the coding block 100 and a pixel signal from inside the corresponding prediction bock 120 is taken, the signal of the difference is subjected to orthogonal transformation and quantization, and then the resultant difference signal and the prediction vector are coded. The process of decoding is similar to the process of coding. A reproduction image may be formed by setting the not-yet-coded area 140 as a not-yet-decoded area, the coding block 100 as a decoding block targeted for decoding, and the already-coded area 130 as an already-decoded area, and adding the information of the difference to a prediction signal taken from the already-decoded area according to the vector information.
Patent Documents 1 and 2 discloses a prediction method in a condition in which a prediction block 110 overlaps with a coding block 100 as shown in FIG. 3. In this case, the lower right portion (overlap 200) of the prediction block 110 has not been subjected to coding, and therefore there is no data making a prediction signal. Cited as signals from the overlap 200 in Patent Document 1 are: a signal of a fixed value (e.g. a signal value for expressing gray); a signal of a mean value of pixel values from surrounding pixels 210; and a signal with a signal value predicted from the surrounding pixels 210 (e.g. the method of the part (2) of FIG. 1). Therein, the surrounding pixels 210 belong to the already-coded area 130, and neighbor the overlap 200 (a pixel belonging to pixels of the overlap is present somewhere in eight vicinities of a pixel concerned). In the case of decoding in the condition as shown by FIG. 3, the overlap 200 where the prediction block 110 of the already-decoded area 130 overlaps with the coding block 100 targeted for decoding in the not-yet-decoded area 140 has not been subjected to decoding, and therefore there is no data making a prediction signal.
Non-patent Document 1: ITU-T H.264, SERIES H: AUDIOVISUAL AND MULTIMEDIA SYSTEMS Infrastructure of audiovisual services—Coding of moving video, Advanced video coding for generic audiovisual services;
Non-patent Document 2: ISO/IEC 14496-10, Information technology—Coding of audio-visual objects—Part 10: Advanced Video Coding (the content of which is the same as that of Non-patent Document 1);
Patent document 1: US patent application No. 2003/0202588; and
Patent document 2: the Japanese published unexamined patent application No. JP-A-6-351001.